#include "yigellipseitem.h"

YigEllipseItem::YigEllipseItem(YigSynthGraphic* synthGraphic, qreal x, qreal y, qreal width, qreal height, QGraphicsItem *parent) :
    QGraphicsEllipseItem( x, y, width, height, parent )
{
    mSynthGraphic = synthGraphic;
}

/*
int YigEllipseItem::type() const
{
    // Enable the use of qgraphicsitem_cast with this item
    return Type;
}
*/
void YigEllipseItem::setPos( const QPointF &pos )
{
    QGraphicsEllipseItem::setPos( pos );
    mSynthGraphic->updatePos( pos );
}

void YigEllipseItem::setPos( qreal x, qreal y )
{
    QGraphicsEllipseItem::setPos( x, y );
    mSynthGraphic->updatePos( this->pos() );
}

void YigEllipseItem::moveBy( qreal dx, qreal dy )
{
    QGraphicsEllipseItem::moveBy( dx, dy );
    mSynthGraphic->updatePos( this->pos() );
}

void YigEllipseItem::setSyncedBrush( const QBrush &brush )
{
    QAbstractGraphicsShapeItem::setBrush( brush );
    mSynthGraphic->updateColor( brush.color() );
}

void YigEllipseItem::mouseMoveEvent(QGraphicsSceneMouseEvent *event)
{
    QGraphicsEllipseItem::mouseMoveEvent( event );
    mSynthGraphic->updatePos( this->pos() );
}

